(function() {
  $(function() {
    var form;
    form = $('.form.main');
    form.find('h4.dividing.header i.icon.accordion').click(function(evt) {
      var next, parent, visible, _results;
      visible = $(this).hasClass('down');
      if (visible) {
        $(this).removeClass('down').addClass('right');
      } else {
        $(this).removeClass('right').addClass('down');
      }
      parent = $(this).parent('.dividing.header');
      _results = [];
      while (true) {
        next = parent.next();
        if (!next.hasClass('fields')) {
          break;
        }
        if (visible) {
          next.hide('fast');
        } else {
          next.show('fast');
        }
        _results.push(parent = next);
      }
      return _results;
    });
    if (form.data('disabled')) {
      form.find('*').not('button#disable').not('button#cancel').addClass('disabled').attr('disabled', "disabled");
    }

    /*
    form.submit (evt) ->
        if not $(this).form('is valid')
            evt.preventDefault()
            return false
        form.find('button#ok').addClass('loading')
     */
    form.find('button#delete').click(function(evt) {
      var action;
      action = $(this).data('action');
      if (!action) {
        return alert('删除按钮没有定义 data-action');
      }
      if ($(this).hasClass('has_clicked')) {
        $(this).addClass('loading');
        $(this).removeClass('has_clicked').text('删 除');
        return $.post(action, {
          serial: form.form('get value', 'serial') || '',
          uuid: form.form('get value', 'uuid') || ''
        }, function(resp) {
          return form.find('button#delete').removeClass('loading');
        });
      } else {
        return $(this).addClass('has_clicked').text('确认删除');
      }
    });
    return form.find('button#disable').click(function() {
      var action, disabled;
      action = $(this).data('action');
      if (!action) {
        return alert('删除按钮没有定义 data-action');
      }
      disabled = $(this).data('disabled');
      if (disabled === void 0) {
        return alert('禁用/启用按钮没有定义 data-disabled');
      }
      if (disabled) {
        $(this).addClass('loading');
        return $.post(action, {
          serial: form.form('get value', 'serial'),
          uuid: form.form('get value', 'uuid'),
          disabled: !disabled
        }, function(resp) {
          return form.find('button#disable').removeClass('loading');
        });
      } else {
        if ($(this).hasClass('has_clicked')) {
          $(this).removeClass('has_clicked').text('禁 用');
          $(this).addClass('loading');
          return $.post(action, {
            serial: form.form('get value', 'serial'),
            uuid: form.form('get value', 'uuid'),
            disabled: !$(this).data('disabled')
          }, function(resp) {
            return form.find('button#disable').removeClass('loading');
          });
        } else {
          return $(this).addClass('has_clicked').text('确认禁用');
        }
      }
    });
  });

}).call(this);
